assume cs:code,ds:data,ss:stack

;数据段
data segment
		dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
data ends

;栈段
stack segment
		dw 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
stack ends

;代码段
code segment
    start:
		;设置栈顶
	    mov ax,stack
		mov ss,ax
		mov sp,20h
		
		;设置数据段
		mov ax,data
		mov ds,ax
		mov bx,0
		
	s:
		push [bx]
		add bx,2
		loop s
		
		mov bx,0
	s0:
		pop [bx]
		add bx,2
		loop s0
		
		mov ax,4c00h
		int 21h
		
code ends

end start	;告诉编译器程序结束位置，程序入口